﻿namespace HuwmanCode

open System
open System.Reflection

[<AutoOpen>]
module TypeExtension =
    type Type with
        /// <summary>
        /// Determines whether an instance of the current System.Type is an implementation of the specified Type.
        /// </summary>
        member specializedType.IsImplementationOf (baseType:Type) =
            let isAssignable = baseType.IsAssignableFrom specializedType

            isAssignable